package robot;

import java.util.List;

import com.google.wave.api.*;

public class RobotServlet extends AbstractRobotServlet {

  @Override
  public void processEvents(RobotMessageBundle bundle) {
    Wavelet wavelet = bundle.getWavelet();
              
    for (Event e: bundle.getEvents()) {
      if (e.getType() == EventType.BLIP_SUBMITTED) {
    	  String text = e.getBlip().getDocument().getText();
    	  log("soll ich konvertieren?? " + text);
    	  if(text.startsWith("convert: ")) {
    		  // nehme Blib Inhalt und Verschicken, 
    		  // Antwort als Blibinhalt setzen:
    		  String newText = text.substring(8);
    		  log("Konvertiere Text: " + newText);
    		  TextConverter textConverter = new TextConverter();
    		  String convertedText = textConverter.convert(newText);
    		  e.getBlip().getDocument().replace(convertedText);
    	  } else {
    		  log("Konvertiere nicht schneisse mich raus");
    		  e.getBlip().getDocument().append("kann icht konvertieren, ich bin dann mal weg....");
    		  List<String> participants = e.getWavelet().getParticipants();
    		  for (String participantName : participants) {
				if (participantName.equalsIgnoreCase("hackathon-wave@appspot.com")){
					log("wavelettRemoveParticipant");
					e.getWavelet().removeParticipant(participantName);
				} else {
					log("Bleibt in wave: " + participantName);
				}
			}
    	  }
    	  
//    	  PersistenceManager pm = PMF.get().getPersistenceManager();
//          
//          BlipData data = new BlipData(textView.getText());
//
//          try {
//        	  pm.makePersistent(data);
//    	  } catch (Exception e1) {
//        		  
//    	  } finally {
//    		  pm.close();
//    	  }
      }
    }
  }
}